home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 March / CHIP Mart 1997.iso / SurfCam / SURFCAM.Z / UNCX01.F13 < prev    next >
Encoding:
Text File  |  1996-04-01  |  5.0 KB  |  115 lines

  1. REDEF/ON                                $$ ALLOW VARIABLES TO BE OVERWRITTEN
  2. RESERV/TULTAB,60                        $$ RESERVING 60 SPACES FOR TOOL CHANGES
  3. FOUNDT=0
  4. LODNUM=0
  5. TLCNT=0                                 $$ TOOL CHANGE COUNTER
  6.  
  7. CIMFIL/ON,PARTNO                        $$ CAPTURE THE PARTNO LINE
  8.  STRNG=TEXT/CLW                         $$ STORE THE TEXT TO STRING
  9.  STRNG=TEXT/OMIT,STRNG,1                $$ REMOVE THE SPACES 
  10.  CMPR=CMPRF(STRNG,(TEXT/' 0'))          $$ COMPARE THE STRING TO SEE IF IT'S EMPTY
  11.  IF(CMPR.EQ.1)THEN                      $$ IF THE RESULT EQUALS 1(TRUE)... 
  12.   PROMPT=TEXT/'ENTER PROGRAM NUMBER'    $$ CREATE A VARIABLE WITH THE PROMPT TEXT
  13.   RSLT=FILEF(0,1,PROMPT)                $$ WRITE THE CONTENTS OF PROMPT TO SCREEN
  14.   STRNG=TEXT/READ,0                     $$ STORE THE ANSWER TO STRNG
  15.  ENDIF                                  $$ END IF TRUE
  16.  PARTNO/STRNG                           $$ REDEFINE PARTNO LIN
  17. CIMFIL/OFF                              $$ END ROUTINE
  18.                                     
  19. CIMFIL/ON,MACHIN                        $$ CAPTURE MACHIN LINE
  20.  RSLT=POSTF(13)                         $$ SEND RECORD TO POST
  21.  SEQNO/OFF                              $$ TURN OFF SEQUENCE NUMBERS
  22.  INSERT/'O',STRNG,'$'                   $$ OUTPUT THE O ADDRESS WITH THE NUMBER 
  23.  Q1=TEXT/' ENTER WORK OFFSET # '        $$ CREATE A VARIABLE WITH THE PROMPT ENTER WORK OFFSET
  24.  ZQ=FILEF(0,1,Q1)                       $$ WRITE THE CONTENTS OF Q1 TO THE SCREEN
  25.  A1=TEXT/READ,0                         $$ STRING FORM
  26.  A1N=SCALF(A1)                          $$ NUMERIC FORM
  27.  INSERT/'G0G90G17G80G40$'               $$ INSERT G0G90G17G80G40  
  28.  IMHERE=POSTF(7,1)                      $$ SAVE CURENT LOCATION 
  29.  DO/TULSCN,QQ=1,999999,1                $$ START LOOP 
  30.   RECTYP=POSTF(14)                      $$ READ NEXT RECORD
  31.   RECTYP=POSTF(7,2)                     $$ GET REC TYPE 
  32.    IF(RECTYP.EQ.2000) THEN              $$ CHECK FOR POST COMMANDS
  33.     IF((POSTF(7,3)) .EQ. (ICODEF(LOADTL))) THEN   $$ CHECK FOR TOOL CHANGE
  34.      FOUNDT=FOUNDT+1                    $$ ADVANCE COUNTER 
  35.       TULTAB(FOUNDT)=POSTF(7,4)         $$ LOAD TOOL TABLE WITH # 
  36.     ENDIF
  37.     ELSE
  38.      IF(RECTYP .EQ. 14000) THEN         $$ CHECK FOR 'FINI'  
  39.       QQ=1000000                        $$ WILL STOP LOOP
  40.        AA=POSTF(15,(IMHERE+1))          $$ GO BACK TO THE TOP  
  41.      ENDIF
  42.     ENDIF
  43.  TULSCN)CONTIN
  44. CIMFIL/OFF                              $$ END ROUTINE
  45.                                        
  46. SNDHOM=MACRO                            $$ SEND HOME MACRO
  47.  AUXFUN/9,NEXT                          $$ M9
  48.  AUXFUN/5                               $$ M5  
  49.  PREFUN/0,NEXT                          $$ G0 
  50.  PREFUN/49,NEXT                         $$ G49
  51.  POSTN/IN,26,0                          $$ Z0
  52.  AUXFUN/1                               $$ M1 
  53. TERMAC
  54.                                       
  55. CIMFIL/ON,LOADTL                        $$ CAPTURE THE LAODTL 
  56.  RSLT=POSTF(9,7,159)                    $$ CHANGE LENGTH TO ADJUST(159)
  57.  RSLT=POSTF(10,6,0)                     $$ CHANGE THE LENGTH TO 0
  58.  RSLT=POSTF(20)                         $$ SAVE RECORD
  59.  REPEAT/24,5,A1N
  60.  REPEAT/7,7,90 
  61.  MODE/INVERS,AUTO                       $$ TURN ON INVERSE TIME
  62.  IF (TLCNT .GE. 1.) THEN
  63.   CALL/SNDHOM
  64.  ENDIF
  65.  TLCNT=TLCNT+1
  66.  LODNUM=LODNUM+1                        $$ TOOL PRESELECT COUNTER
  67.  IF(LODNUM .EQ. FOUNDT) THEN
  68.   FIRSTT=TULTAB(1)                      $$ LAST TOOL CHANGE PRESELECT
  69.   REPEAT/26,20,FIRSTT                   $$ OUTPUT WITH NEXT Z(26)
  70.  ELSE
  71.   NEXTT=TULTAB(LODNUM+1)                $$ ANY TOOL CHANGE PRESELECT
  72.   REPEAT/26,20,NEXTT                    $$ OUTPUT WITH NEXT Z(26) 
  73.  ENDIF
  74.  RSLT=POSTF(21)                         $$ RELOAD SAVED RECORD
  75.  XX=POSTF(2,1,1867,1)                   $$ SIMULATION MODE ON
  76.  RSLT=POSTF(13)                         $$ SEND RECORD TO POST
  77.  XX=POSTF(2,1,1867,0)                   $$ SIMULATION MODE OFF
  78.  AUXFUN/6
  79. CIMFIL/OFF                              $$ END ROUTINE
  80.  
  81. CIMFIL/ON,SPINDL
  82.  QQ=POSTF(7,5)
  83.  AA=POSTF(7,6)
  84.   CASE/AA
  85.    WHEN/(ICODEF(CLW))
  86.     DIR=3
  87.    WHEN/(ICODEF(CCLW))
  88.     DIR=4
  89.   ENDCAS
  90.  REPEAT/24,25,26,19,QQ,ALL
  91.  REPEAT/24,25,26,13,DIR,ALL
  92. CIMFIL/OFF
  93.  
  94. CIMFIL/ON,COOLNT
  95.  QQ=POSTF(7,4)
  96.   CASE/QQ
  97.   WHEN/(ICODEF(OFF))                    $$ 72  
  98.    CC=9
  99.   WHEN/(ICODEF(FLOOD))                  $$ 89
  100.    CC=8
  101.   WHEN/(ICODEF(MIST))                   $$ 90
  102.    CC=7
  103.  ENDCAS
  104.  REPEAT/26,13,CC
  105. CIMFIL/OFF 
  106.                                         
  107. CIMFIL/ON,END                          $$ CAPTURE THE END 
  108.  RSLT=POSTF(20)                        $$ SAVE RECORD ASIDE
  109.  AUXFUN/9,NEXT                         $$ M9 NEXT TO...
  110.  AUXFUN/5,                             $$ M5
  111.  INSERT/'G90G49Z0.$'                   $$ INSERT G0G49Z0
  112.  INSERT/'E0X0.Y0.$'                    $$ INSERT E0X0Y0
  113.  RSLT=POSTF(21)                        $$ RELOAD RECORD
  114.  RSLT=POSTF(13)                        $$ SEND IT OFF TO THE POST
  115. CIMFIL/OFF                             $$ END ROUTINE